package server.business.pojo;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

/**
 * 
 * @TableName blood_stock
 * @author Galaxy
 */
@TableName(value ="blood_stock")
@Data
public class BloodStock implements Serializable {
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 血液id
     */
    @TableField(value = "blood_id")
    private String bloodId;

    /**
     * 创建时间
     */
    @TableField(value = "gmt_create")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08")
    private Date gmtCreate;

    /**
     * 修改时间
     */
    @TableField(value = "gmt_modified")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08")
    private Date gmtModified;

    /**
     * 血液品种
     */
    @TableField(value = "blood_variety")
    private String bloodVariety;

    /**
     * 每袋血液按照血液制品剂量单位标准的血液量
     */
    @TableField(value = "unit_volume")
    private BigDecimal unitVolume;

    /**
     * rh血型
     */
    @TableField(value = "rh_blood_type")
    private String rhBloodType;

    /**
     * ABO血型码
     */
    @TableField(value = "abo_blood_type")
    private String aboBloodType;

    /**
     * 血液失效的公元纪年日期时间
     */
    @TableField(value = "failure_time")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08")
    private Date failureTime;

    /**
     * 血液所在库存具体位置描述
     */
    @TableField(value = "position")
    private String position;

    /**
     * 血液入库的公元纪年日期时间
     */
    @TableField(value = "inbound_time")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08")
    private Date inboundTime;

    /**
     * 血液库存状态代码(数据字典）
     */
    @TableField(value = "state")
    private String state;

    /**
     * 删除标记（0未删除，1删除）
     */
    @TableField(value = "delete_flag")
    private Integer deleteFlag;

    @TableField(exist = false)
    private static final long serialVersionUID = -7363324651225491156L;
}